BenchMarksql 6.0 配置文件

1 背景知识

BenchMarksql 6.0 配置文件采用使用 JAVAProperties 格式。此配置文件控制 JDBC 驱动程序、数据库类型、连接用户名密码、数据量大小等行为。

2 连接参数

Parameter Description Example
db 数据库类型可以是 firebirdmariadboraclepostgres 或者 transact-sql postgres
driver 要加载的JDBC驱动类型。 org.postgresql.Driver
application 客户端应用程序的类型 ,BenchmarkSQL 的Generic支持所有的数据库。PostgreSQLStoredProcOracleStoredProc 是使用后端存储过程进行性能测试。 Generic
conn JDBC 连接串 jdbc:postgresql://localhost/testdb
user 数据库用户名称 benchmarksql
password 数据库用户密码 benchmarksql

3 缩放参数

Parameter Description Example
warehouses 数据库的缩放因子参数,每个仓库为100MB,更多内容请参考BenchmarkSQL Timed Driver#2 缩放的问题 50
loadWorkers 初始化数据库内容的并行线程数。取决于服务器的CPU,IO的物理配置。 8
monkeys 用于处理客户端输入和输出的 Monkey 线程数量,更多内容请参考BenchmarkSQL Timed Driver#5 Monkey Queue 8
sutThreads 需要启动的应用程序连接数量。更多内容请参考BenchmarkSQL Timed Driver#7 System Under Test 80
maxDeliveryBGThreads 指定 UST 连接的派发事物的线程数量。更多内容请参考BenchmarkSQL Timed Driver#8 Delivery BG Scheduler 40
maxDeliveryBGPerWarehouse 指定同一个仓库下的Delivery BG 派发事务的线程数量。更多内容请参考BenchmarkSQL Timed Driver#8 Delivery BG Scheduler 1

4 时间和测试持续参数

Parameter Description Example
rampupMins 再开始性能测试之前延迟的分钟数。 这应该大于 rampupTerminalMins 参数。 30
rampupSUTMins 启动 SUT 线程(数据库连接)的持续时间,分钟为单位。这应该低于或等于 rampupTerminalMins参数。 15
rampupTerminalMins 客户端启动的持续时间,以分钟为单位。模拟人类的思考和键入动作。 20
runMins 性能测试的持续时间,以分钟为单位,应该足够长。 300
reportIntervalSecs 性能测试报告平均事务数的时间间隔。 60
restartSUTThreadProbability SUT 线程 (数据库连接) 完成请求之后被终止的概率。 0.001

5 吞吐量优化参数

Warning

更改以下你数将导致基准测试违反 TPC-C 要求。

Parameter Description Example
keyingTimeMultiplier 指定用户键盘输入数据的模拟时间的延迟,单位为秒。 0.1
thinkTimeMultiplier 指定用户屏幕显示数据的延迟,单位为秒 。 0.1

6 事务组合参数

TPC-C 规范要求交易类型的最低百分比。

上面缺少了一种交易就是新订单的交易百分比。 TPC-C 只要求了最低 43% 的付款率。如果只有 42.98% ,则基准测试是无效的。

BenchMarksql 6.0 使用随机数选择每个终端的下一次交易。为了避免上述问题,建议将百分比指定的高一点。

Parameter Description Example
paymentWeight 付款交易的概率(百分比)。 43.1
orderStatusWeight 交易订单状态的概率(百分比)。 4.1
stockLevelWeight 库存水平的概率(百分比)。 4.1
deliveryWeight 交付交易的概率(百分比)。 4.1

7 参考连接

Properties file - BenchmarkSQL